
/*
#include<stdio.h>
int main()
{
	char a[1000];
	scanf("%s",a);
	for(int i=0;a[i]!='.';i++)
	{
		printf("%c",a[i]);
	}
	return 0;
}
*/

//
/*
#include<stdio.h>
#include<math.h>
int main()
{
	int x=0,y=0,r=0;
	scanf("%d%d%d",&x,&y,&r);
	int x1=0,y1=0;
	scanf("%d%d",&x1,&y1);
	if((pow(x1-x,2)+pow(y1-y,2))<=pow(r,2))
	{
		printf("-1");
	}
	else
	{
		double d=0,l=0,sin,shalf,chalf;
		l=sqrt(pow(x1-x,2)+pow(y1-y,2));
		d=sqrt(pow(l,2)-pow(r,2));
		shalf=r/l;
		chalf=d/l;
		sin=2*shalf*chalf;
		printf("%0.2lf",sin);
	}
	return 0;
} 
*/

//
/*
#include<stdio.h>
int main()
{
	int n=0,k=0;
	scanf("%d%d",&n,&k);
	double arr[n];
	for(int i=0;i<n;i++)
	{
		scanf("%lf",&arr[i]);
	}
	int res=1,num=0;
	for(int i=0;i+k<n;i++)
	{
		res=1;
		for(int j=0;k+j>0;j--)
		{
			if(arr[j+i+k]<=arr[j+i+k-1]/2)
			{
				res=0;
				break;
			}
		}
		if(res==1)
		{
			num++;
		}
	}
	printf("%d",num);
	return 0;
}
*/

//
/*
#include<stdio.h>
int main()
{
	int n=0;
	scanf("%d",&n);
	int a[n],b[n],c[n];
	for(int i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	for(int i=0;i<n;i++)
	{
		scanf("%d",&b[i]);
	}
	for(int i=0;i<n;i++)
	{
		c[i]=a[i]-b[i];
	}
	int res=0;
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(c[i]+c[j]>0)
			{
				res++;
			}
		}
	}
	printf("%d",res);
	return 0;
}
*/

#include<stdio.h>
#include<string.h>
typedef struct
{
	char arr[31];
	int num;
} LL;

void merge_sort(LL *m,int l,int r)
{
	if(l>=r)
	{
		return;
	}
	int mid=l+r>>1;
	merge_sort(m,l,mid);
	merge_sort(m,mid+1,r);
	int i=l,j=mid+1,k=0;
	LL tmp[r-l+1];
	while(i<=mid&&j<=r)
	{
		if(m[i].num >=m[j].num )
		{
			tmp[k++]=m[i++] ;
		}
		else
		{
			tmp[k++]=m[j++] ;
		}
	}
	while(i<=mid)
	{
		tmp[k++]=m[i++] ;
	}
	while(j<=r)
	{
		tmp[k++]=m[j++] ;
	}
	for(i=l,j=0;i<=r;i++,j++)
	{
		m[i]=tmp[j];
	}
}

int main()
{
	LL name[1010];
	int n=0,q=0;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
	{
		scanf("%s%d",&name[i].arr ,&name[i].num );
	}
	merge_sort(name,0,n-1);
	for(int i=0;i<n;i++)
	{
		printf("%d\n",name[i].num );
	 } 
	int x=(int)(n*0.3);
	while(name[x].num==name[x+1].num&&x+1<=n-1)
	{
		x++;
	}
	scanf("%d",&q);
	while(q--)
	{
		char nam[31];
		int s=0;
		scanf("%s",&nam);
		for(int p=0;p<=x;p++)
		{
			if(!strcmp(name[p].arr,nam))
			{
				s=1;
				printf("YES\n");
				break;
			}
		}
		if(s==0)
		{
			printf("NO\n");
		}
	}
	return 0;
 } 




















